import React, { Component } from 'react';
// 高阶组件的例子
// 高阶组件 一个函数 接收一个组件 返回一个新的组件
// 1. 定义一个高阶组件 自动注入版权信息 
function withCopyRight(Cmp){
  // class extends  匿名类
  return class extends Component{
    state = {
      copyRight:"江苏传智播客教育科技股份有限公司  版权所有Copyright 2006-2021, All Rights Reserved   苏ICP备16007882号-1"
    }
    render(){
      return <div>
        <Cmp {...this.state}></Cmp>
      </div>
    }
  }
}

const Demo = (props)=>{
  console.log(props);
  return <div>
    <h1>Demo 组件</h1>
    <h2>{props.copyRight}</h2>
  </div>
}
const WithCopyDemo = withCopyRight(Demo);

class App extends Component {
  render() {
    return (
      <div>
        <Demo></Demo>
        <WithCopyDemo></WithCopyDemo>
      </div>
    );
  }
}

export default App;
